home *** CD-ROM | disk | FTP | other *** search
- Path: rcfnews.cs.umass.edu!barrett
- From: bscott@nyx10.cs.du.edu (Ben Scott)
- Newsgroups: comp.sys.amiga.reviews
- Subject: REVIEW: CanDo version 3.0
- Followup-To: comp.sys.amiga.programmer
- Date: 21 Feb 1995 16:50:59 GMT
- Organization: The Amiga Online Review Column - ed. Daniel Barrett
- Lines: 210
- Sender: amiga-reviews@math.uh.edu (comp.sys.amiga.reviews moderator)
- Distribution: world
- Message-ID: <3id5lj$jfv@kernighan.cs.umass.edu>
- Reply-To: bscott@nyx10.cs.du.edu (Ben Scott)
- NNTP-Posting-Host: hobbes.cs.umass.edu
- Keywords: programmer, multimedia, commercial
- Originator: barrett@hobbes.cs.umass.edu
-
-
- PRODUCT NAME
-
- CanDo v3.0 (v3.006 tested)
-
-
- BRIEF DESCRIPTION
-
- CanDo is a 'visual' application development environment, which allows
- largely mouse-based creation of Amiga software.
-
-
- AUTHOR/COMPANY INFORMATION
-
- Name: Inovatronics
- Address: 8499 Greenville Av. Suite 209B
- Dallas, TX 75231
-
- Telephone: (214) 340-4991
- Fax: (214) 340-8514
-
- (There's also a German office, at +49 89 3173164)
-
-
- LIST PRICE
-
- I think the list price is $399 (US), but I only paid a $159 upgrade
- fee as a registered owner of CanDo v1.5.
-
-
- SPECIAL HARDWARE AND SOFTWARE REQUIREMENTS
-
- HARDWARE
-
- 2 MB RAM required.
- Hard drive required.
-
- SOFTWARE
-
- AmigaDOS 2.04 or higher required.
-
-
- COPY PROTECTION
-
- None.
-
-
- MACHINE USED FOR TESTING
-
- Amiga 4000/040 with 18 megs of RAM, AmigaDOS 3.0
-
-
- INSTALLATION
-
- Uses the standard Commodore installer - straightforward and simple.
-
-
- REVIEW
-
- I won't attempt to describe the program in detail; this is, after
- all, a short review. CanDo has a very polished interface consisting of
- scrolling toolbars (horizontal or vertical, depending on your situation) and
- many types of option-filled windows. You can begin by setting the
- screenmode and/or window size for your application, then begin adding
- buttons, menus, timers, graphic elements, ARexx or input event handlers, or
- whatever else you need for your program, then link them to each other or to
- script files. CanDo's scripting language seems very complete and clear -
- some 440 commands with plain-English names (no matter how long that makes
- them, hence functions like "SetWindowBrushAnimTPS()"...) and a
- straightforward, forgiving syntax. It also possesses a full set of looping
- constructs, global and local variables (along with type conversion and both
- Array and Record types), parameter passing, and surprising speed of
- execution. It is a rare moment indeed when I come across a situation for
- which there is no convenient command to handle it. Once, I had to create
- sets of mutual-exclusion buttons, early on in the learning process, and it
- took me just 3-4 minutes to set up a quick function to handle the job,
- despite my inexperience.
-
- CanDo also has an outstanding help system and some very nice
- programming aids. Not only is all information available as an AmigaGuide
- hypertext file, but simply double-clicking on a command or keyword in the
- script editor will bring up the relevant page for definitions and
- explanations. You can also search for commands with the Lexicon Assistant
- and have it insert them into your code complete with the proper template.
- But that's only for situations when you actually need to write code - very
- often, you hand need never leave the mouse if you utilize the toolbar. For
- example, the "Objects" button brings up a requester which shows every object
- in your project in one window, and every possible action that can be applied
- to it in the other. You can disable it, execute one of its scripts, move
- it, find out its status, and so on, all with mouse clicks that write the
- code for you. You can also paint graphics (including animbrushes) on the
- screen, play sounds or MODs, run external commands via DOS or ARexx, and
- call other routines. CanDo is fairly object-oriented - when displaying or
- moving an Animbrush buffer, for example, it can have scripts assigned to
- specific frames (or each frame) that are controlled by accessing the buffer
- itself, not the calling routine. Keyboard shortcuts for functions are easy
- to create as well, since you can have them simply call the appropriate script
- attached to the object in question (button or menu item or whatever). There
- are facilities for aligning GUI objects on your interface,
-
- Another nice aspect of CanDo is its relative efficiency in most
- areas. Code executes surprisingly fast, at least on my 68040 - I have an
- appalling brute-force search routine cobbled together in one project, and
- you can hardly tell it's not a highly optimized algorithm by watching it
- run. CanDo programs are also quite small - at least until you "bind" them.
- In order to run on an Amiga without the hefty cando.library installed, you
- must process them to integrate the library functions into the executable.
- This can turn a 5K utility into a ~180K monster. But these days, an extra
- one or two hundred K doesn't seem to bother people like it did in the past,
- I suppose. Inovatronics has revised its licensing policy to allow freely
- distributable executables for non-commercial purposes (and, I am told, most
- commercial products under $50 or so).
-
- Other functions include - serial and parallel port handlers, the
- ability to create ARexx ports and parse incoming commands, the ability to
- handle mouse or joystick events of any type including doubleclick, drag, RMB
- up and down, and proportional game controllers, the ability to use brushes
- for menu items or even button masks for irregular shaped hit areas, a full
- set of Workbench icon manipulation functions including AppEvent support,
- about 50 special effect transitions (complete with animated preview),
- asynchronous timer event objects which enable limited "multithreading", a
- fairly robust user-definable error handling facility, and even the
- interesting ability to execute code typed in by the user at runtime, plus
- lots more of course. There is a separate CanDebug package available as
- well, to allow single-stepping and a supervised runtime overview among other
- things - I have not tried this yet, however.
-
-
- DOCUMENTATION
-
- There is an excellent ~650 page illustrated manual in a 3-ring
- binder, and all text is available as an AmigaGuide document online as well.
- It includes the standard prose explanations of all functions as well as a
- large reference section, and a full index.
-
-
- LIKES
-
- Almost everything. The help system, as I've said, is wonderful. The
- flexibility and ease of use is fantastic. The manual is nicely written and
- printed, the software is stable and robust - it's a joy to use, and surpasses
- many well-known Windows and Mac visual development packages in some areas.
-
-
- DISLIKES AND SUGGESTIONS
-
- There are a few features I think they could add to the scripting
- language, like making it easier to control the opening of screens (as in
- changing the parameters at runtime, rather than fixing them in stone when the
- program is written). I have a small list of minor interface improvements,
- too, like simpler cut-and-paste for multiple objects, a global search-and-
- replace function for all scripts in a project, more extensive Undo features
- and so forth. Nothing really fundamental or major, however.
-
-
- COMPARISON TO OTHER SIMILAR PRODUCTS
-
- Right now I'm using CanDo to re-implement a project I originally did
- with SuperBase4 Pro. I wouldn't exactly call it a 'similar' product, though.
- After less than 3 weeks with CanDo, including learning time, I was at the
- same point that I was after 4 months with SBase, and the application is
- vastly better in the bargain. The online help and programming aids are
- unrivaled.
-
-
- BUGS
-
- No crashes yet; once in a while I can click on a button and nothing
- will happen, but that doesn't usually persist. Also, certain errors you can
- make in your program can bypass the error handler and cause CanDo to just
- quit (cleanly, so far as I can tell) without explanation, or sometimes even
- appear to hang. The latter usually happens only when I try to address an
- ARexx port improperly, for example. Included are utilities to stop a deck
- which has hung or is stuck in a loop. I rate it as very stable.
-
-
- VENDOR SUPPORT
-
- I wish they had some kind of Net presence. There is a CanDo mailing
- list but so far it has shown almost no activity. My only contact with tech
- support came before I ordered the product, to verify that all the functions
- I need were present, and they seemed informed and helpful at the time. Note
- that there are rumors Inovatronics is in financial trouble, but they seem to
- be hanging in there at the time of this writing.
-
-
- CONCLUSIONS
-
- This is one of the slickest programs I've ever used on the Amiga.
- It's actually one of the slickest programs I've used on any platform, when
- you come right down to it. Anyone who needs to write software on the Amiga
- and has not already invested lots of time and effort into a more
- conventional programming language, or does not have the time to use
- something like C, should take a good look at CanDo. It's useful for
- everything from multimedia presentations to games, database applications to
- paint programs. It's also ideal for application prototyping or building
- front-ends to other software packages.
-
-
- COPYRIGHT NOTICE
-
- Copyright 1995 Ben Scott. All rights reserved.
-
- ---
-
- Daniel Barrett, Moderator, comp.sys.amiga.reviews
- Send reviews to: amiga-reviews-submissions@math.uh.edu
- Request information: amiga-reviews-requests@math.uh.edu
- Moderator mail: amiga-reviews@math.uh.edu
- Anonymous ftp site: math.uh.edu, in /pub/Amiga/comp.sys.amiga.reviews
-